﻿/*
 * Copyright(C) 2012,ajayumi 保留所有权利。( All rights reserved. )
 * 
 * 文件名称：IPagination.cs
 * 摘    要：
 * 当前版本：1.0
 * 作    者：黄乙冬 (ajayumi)
 * 创建日期：2012年5月24日
 */
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ajayumi.Platform
{
    /// <summary>
    /// IPagination.cs 分页的接口定义
    /// Author   : 黄乙冬
    /// Date     : 2011-12-01
    /// </summary>
    public interface IPagination
    {
        /// <summary>
        /// 是否启用分页
        /// </summary>
        bool IsPaginationable { get; set; }

        /// <summary>
        /// 第一页控件的ID
        /// </summary>
        string FirstPageConID { get; }
        /// <summary>
        /// 上一页控件的ID
        /// </summary>
        string PrevPageConID { get; }
        /// <summary>
        /// 下一页控件的ID
        /// </summary>
        string NextPageConID { get; }
        /// <summary>
        /// 最后一页控件的ID
        /// </summary>
        string LastPageConID { get; }

        ///// <summary>
        ///// 跳转控件的ID
        ///// </summary>
        //string DirectPageConID { get; }
        ///// <summary>
        ///// 输入跳转页码控件的ID
        ///// </summary>
        //string InputPageConID { get; }
        /// <summary>
        /// 数字页码控件的ID
        /// </summary>
        string DigitPageConID { get; }
        ///// <summary>
        ///// 页面记录数控件的ID
        ///// </summary>
        //string PageSizeConID { get; }

        /// <summary>
        /// 分页信息控件的ID
        /// </summary>
        string PageDetailConId { get; }

        ///// <summary>
        ///// 第二个，第一页控件的ID
        ///// </summary>
        //string FirstPageConID_Second { get; }
        ///// <summary>
        ///// 第二个，上一页控件的ID
        ///// </summary>
        //string PrevPageConID_Second { get; }
        ///// <summary>
        ///// 第二个，下一页控件的ID
        ///// </summary>
        //string NextPageConID_Second { get; }
        ///// <summary>
        ///// 第二个，最后一页控件的ID
        ///// </summary>
        //string LastPageConID_Second { get; }
        ///// <summary>
        ///// 第二个，跳转控件的ID
        ///// </summary>
        //string DirectPageConID_Second { get; }
        ///// <summary>
        ///// 第二个，输入跳转页码控件的ID
        ///// </summary>
        //string InputPageConID_Second { get; }
        ///// <summary>
        ///// 第二个，数字页码控件的ID
        ///// </summary>
        //string DigitPageConID_Second { get; }
        ///// <summary>
        ///// 第二个，页面记录数控件的ID
        ///// </summary>
        //string PageSizeConID_Second { get; }

        /// <summary>
        /// 第一页
        /// </summary>
        void FirstPage();
        /// <summary>
        /// 上一页
        /// </summary>
        void PrevPage();
        /// <summary>
        /// 下一页
        /// </summary>
        void NextPage();
        /// <summary>
        /// 最后一页
        /// </summary>
        void LastPage();
        /// <summary>
        /// 跳转到指定页
        /// </summary>
        /// <param name="pageIndex">页码</param>
        void DirectPage(int pageIndex);
    }
}
